#!/usr/bin/env python
# -*- coding: utf-8 -*- #   
#
# Copyright 2007 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
import cgi
from google.appengine.api import users
import Cookie,urllib
from django.utils import simplejson
from google.appengine.api import urlfetch

from google.appengine.ext import webapp
from google.appengine.ext.webapp import util
from google.appengine.ext.webapp.util import run_wsgi_app
import time
from google.appengine.ext import db
import SiteType
class ADMIN(webapp.RequestHandler):
	def get(self):
		user=SiteType.Header(self)
		self.response.out.write(u"""<div align="center">""")
		if SiteType.isadmin(user):
			NewsList=db.GqlQuery("SELECT * FROM News ORDER BY date DESC LIMIT 10")
			if NewsList.count()==0:
				self.response.out.write(u"""暂时没有新闻""")
			else:
				for news in NewsList:
					self.response.out.write(u"""<a href="%s">"""%news.NewsURL+"""%s</a>"""%news.NewsTitle+u"""<a href="/delnews?news=%s">删除</a> """%news.key()+u"""<a href="/sendrenren?news=%s">发布到人人</a><br>"""%news.key())
		self.response.out.write(u"""<fieldset>""")
		self.response.out.write(u"""<form action="/newnews" method="post">
				<div>标题：<input type="text" name="title"></div>
				<div>URL： <input type="text" name="url"></div>
				<div><input type="submit" value="添加"></div>
			</form></fieldset>""")
		self.response.out.write(u"</fieldset>")
		SiteType.Ender(self)
class NewNews(webapp.RequestHandler):
	def post(self):
		user=users.get_current_user()
		if user:
			if SiteType.ismember(user):
				news=SiteType.News()
				news.NewsTitle=self.request.get('title')
				news.NewsURL= self.request.get('url')
				news.put()
		self.redirect(self.request.headers['referer'])
class SendRenRen(webapp.RequestHandler):
	def get(self):
		user=users.get_current_user()
		thekey=self.request.url
		thekey=SiteType.getkey(thekey,'news=')	
		if user:
			if SiteType.isadmin(user):
				str=u"%s"%db.get(thekey).NewsTitle+u" %s"%db.get(thekey).NewsURL
				SiteType.send_to_renren(str)
		self.redirect(self.request.headers['referer'])
class DelNews(webapp.RequestHandler):
	def get(self):
		user=users.get_current_user()
		thekey=self.request.url
		thekey=SiteType.getkey(thekey,'news=')	
		if user:
			if SiteType.isadmin(user):
				db.delete(thekey)
		self.redirect(self.request.headers['referer'])
class HomePager(webapp.RequestHandler):
	def get(self):
		user=SiteType.Header(self)
		log=SiteType.Log()
		if user:
			log.user = user
		log.ip=str(self.request.remote_addr)
		log.put()
		admined=SiteType.Admined(self)
		if admined:
			self.redirect('/admin?admin')
		NewsList=db.GqlQuery("SELECT * FROM News ORDER BY date DESC LIMIT 10")
		self.response.out.write(u"""<!--Main end-->
<div id="main">
<div id="right">
<h1>本站新闻</h1>""")
		
		if NewsList.count()==0:
			self.response.out.write(u"""暂时没有新闻""")
		else:
			for news in NewsList:
				self.response.out.write(u"""<a href="%s">"""%news.NewsURL+u"""%s</a><br>"""%news.NewsTitle)

		self.response.out.write(u"""
	</div>
	
<div id="left" style="padding:10px; width:490px;">
  <h1>欢迎来到西工大附中北大清华同学会 </h1>
  <p>也许已经毕业，但你是否还记得曾属于最美好的中学阶段的青春年华？
也许已经工作，但你是否还记挂曾经相伴的老师和同学？
也许附中只是一所学校，但你是否希望，在这里，可以有一个家？
我们希望通过这个小小的网站，把附中人的心联系在一起，可以重温旧日的美好岁月，也可以结识新的校友，为自己的人生再添一份色彩。
也许我们已经散落天涯，但请铭记，在西工大附中这个概念下，我们始终亲如一家。
</p>
</div>
</div>
<div id="border"></div>
<div id="cell">
<div id="cell_right"><h1>附中介绍</h1>西北工业大学附属中学是中国陕西省西安市碑林区的一所完全中学，创建于1971年，1985年成为首批陕西省重点中学。2009年4月14日成为“陕西省示范高中”。 <p align="right"><a href="http://www.xgdfz.com"><span>西工大附中首页</span></a></p>
</div>
<div id="cell_middle"><h1>论坛</h1>我们的论坛<p align="right"><a href="/forum">论坛</a></p></div>
<div id="cell_left"><h1>数据库</h1>同学会数据库<p align="right"><a href="/database">数据库</a></p></div>
</div>
<!--Main end-->
""")
		SiteType.Ender(self)
		

def main():
  application = webapp.WSGIApplication([('/', HomePager),('/admin',ADMIN),('/delnews.*',DelNews),('/newnews',NewNews),('/sendrenren.*',SendRenRen)],
                                       debug=True)
  util.run_wsgi_app(application)

if __name__ == '__main__':
  main()
